package cn.lhl01.sys.handler;

import cn.lhl01.common.Results;
import com.alibaba.fastjson2.JSON;
import org.springframework.http.MediaType;
import org.springframework.security.access.AccessDeniedException;
import org.springframework.security.web.access.AccessDeniedHandler;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * 权限不足 拒绝访问 handler
 * 如果使用全局异常处理  这个可不要
 */
public class AuthLimitHandler implements AccessDeniedHandler {

	@Override
	public void handle(HttpServletRequest request, HttpServletResponse response,
					   AccessDeniedException accessDeniedException) throws IOException, ServletException {
		response.setContentType(MediaType.APPLICATION_JSON_UTF8_VALUE);
		//response.getWriter().write("{\"code\": \"403\", \"msg\": \"权限不足\"}");
		response.getWriter().write(JSON.toJSONString(Results.accessDenied()));
	}
}
